package com.qujia.customer.service;

import java.math.BigDecimal;
import java.util.List;

import com.qujia.customer.domain.CustomerElectronicCard;
import com.qujia.customer.domain.IcRegisteInfo;
import com.qujia.customer.domain.IcStatisticsInfo;

/**
 * 卡编号Service接口
 * 
 * @author qujia
 * @date 2021-11-13
 */
public interface IIcRegisteInfoService 
{
    /**
     * 查询卡编号
     * 
     * @param icCardno 卡编号ID
     * @return 卡编号
     */
    public IcRegisteInfo selectIcRegisteInfoById(String icCardno);

    public IcStatisticsInfo selectstatisticsInfo(IcRegisteInfo icRegisteInfo);
    /**
     * 查询卡编号列表
     * 
     * @param icRegisteInfo 卡编号
     * @return 卡编号集合
     */
    public List<IcRegisteInfo> selectIcRegisteInfoList(IcRegisteInfo icRegisteInfo);

    /**
     * 新增卡编号
     * 
     * @param icRegisteInfo 卡编号
     * @return 结果
     */
    public int insertIcRegisteInfo(IcRegisteInfo icRegisteInfo);

    /**
     * 修改卡编号
     * 
     * @param icRegisteInfo 卡编号
     * @return 结果
     */
    public int updateIcRegisteInfo(IcRegisteInfo icRegisteInfo);

    public int updatePasswd(IcRegisteInfo icRegisteInfo);

    public int updateRechargeTran(IcRegisteInfo icRegisteInfo);

    public int updateRecharge(IcRegisteInfo icRegisteInfo);

    public Long createUserElectronic(String IcNo, BigDecimal amt, Long stationId);

    public int updateconsumptionTran(IcRegisteInfo icRegisteInfo, CustomerElectronicCard customerElectronicCard);

    public int updatecancellation(IcRegisteInfo icRegisteInfo);
    /**
     * 批量删除卡编号
     * 
     * @param icCardnos 需要删除的卡编号ID
     * @return 结果
     */
    public int deleteIcRegisteInfoByIds(String[] icCardnos);

    /**
     * 删除卡编号信息
     * 
     * @param icCardno 卡编号ID
     * @return 结果
     */
    public int deleteIcRegisteInfoById(String icCardno);
}
